# SYNTAX TEST "Git Rebase.sublime-syntax"
# <- text.git.rebase comment.line punctuation.definition.comment
label onto
# <- meta.branch.label.git.rebase keyword.other.label.git.rebase
#^^^^^^^^^ meta.branch.label.git.rebase
#^^^^ keyword.other.label.git.rebase
#     ^^^^ constant.language.branch-name.git.commit
reset 9698953 # Fix form submission
# <- meta.branch.reset.git.rebase keyword.operator.branch.reset.git.rebase
#^^^^^^^^^^^^ meta.branch.reset.git.rebase
#            ^ - meta.branch - comment
#             ^^^^^^^^^^^^^^^^^^^^^^ comment.line.git.rebase
#             ^ punctuation.definition.comment.git.rebase
#^^^^ keyword.operator.branch.reset.git.rebase
#     ^^^^^^^ constant.other.hash.git.rebase
pick d284bb2 Initial commit
# <- meta.commit
#^^^^^^^^^^^^^^^^^^^^^^^^^^^ meta.commit
#                           ^ - meta.commit
# <- keyword.operator.commit.pick
#^^^ keyword.operator.commit.pick
#   ^ - storage.type.commit
#    ^^^^^^^ constant.other.hash
#           ^ - constant.other.hash -meta.subject.git.commit
#            ^^^^^^^^^^^^^^ meta.subject.git.commit
#                          ^ - meta.subject.git.commit
p 6746220 Second pick commit # no comment
# <- meta.commit
#^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ meta.commit
#                                         ^ - meta.commit
# <- keyword.operator.commit.pick
#^ - keyword.operator.commit
# ^^^^^^^ constant.other.hash
#        ^ - constant.other.hash -meta.subject.git.commit
#         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ meta.subject.git.commit
#                                        ^ - meta.subject.git.commit
#                ^^^^ - keyword
   p 6746220 Third pick commit # no comment
# <- meta.commit
#^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ meta.commit
#                                            ^ - meta.commit
# ^ - keyword.operator.commit
#  ^ keyword.operator.commit.pick
#   ^ - keyword.operator.commit -constant.other.hash
#    ^^^^^^^ constant.other.hash
#           ^ - constant.other.hash -meta.subject.git.commit
#            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ meta.subject.git.commit
#                                          ^ - meta.subject.git.commit
#                  ^^^^ - keyword
puck 6746220 Invalid command
# <- meta.commit
#^^^^^^^^^^^^^^^^^^^^^^^^^^^^ meta.commit
# <- invalid.illegal.command-expected
#^^^ invalid.illegal.command-expected
#   ^ - storage.type.commit -invalid.illegal.command-expected
#    ^^^^^^^ constant.other.hash
#           ^ - constant.other.hash -meta.subject.git.commit
#            ^^^^^^^^^^^^^^^ meta.subject.git.commit
p 6746x20 Invalid hash # no comment
# <- meta.commit
#^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ meta.commit
# <- keyword.operator.commit.pick
#^ - storage.type.commit
# ^^^^^^^ invalid.illegal.hash-expected
#        ^ - constant.other.hash -meta.subject.git.commit
#         ^^^^^^^^^^^^^^^^^^^^^^^^^ meta.subject.git.commit
#                                  ^ - meta.subject.git.commit
a 6746x20 Invalid command and hash # no comment (#403)
# <- meta.commit
#^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ meta.commit
# <- invalid.illegal.command-expected
#^ - storage.type.commit
# ^^^^^^^ invalid.illegal.hash-expected
#        ^ - constant.other.hash -meta.subject.git.commit
#         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ meta.subject.git.commit
#                                                ^ punctuation.definition.reference.issue.git
#                                                ^^^^ meta.reference.issue.git constant.other.reference.issue.git
#                                                     ^ - meta.subject.git.commit
l feature/branch-name
# <- meta.branch.label.git.rebase keyword.other.label.git.rebase
#^^^^^^^^^^^^^^^^^^^^ meta.branch.label.git.rebase
# ^^^^^^^^^^^^^^^^^^^ constant.language.branch-name.git.commit
label feature/branch-name
# <- meta.branch.label.git.rebase keyword.other.label.git.rebase
#^^^^^^^^^^^^^^^^^^^^^^^^ meta.branch.label.git.rebase
#^^^^ keyword.other.label.git.rebase
#     ^^^^^^^^^^^^^^^^^^^ constant.language.branch-name.git.commit
t onto
# <- meta.branch.reset.git.rebase keyword.operator.branch.reset.git.rebase
#^^^^^ meta.branch.reset.git.rebase
# ^^^^ constant.language.branch-name.git.commit
reset onto
# <- meta.branch.reset.git.rebase keyword.operator.branch.reset.git.rebase
#^^^^^^^^^ meta.branch.reset.git.rebase
#^^^^ keyword.operator.branch.reset.git.rebase
#     ^^^^ constant.language.branch-name.git.commit
m -c c7cba2e feature/branch-name # Merge branch 'alicja/loyalty'
# <- meta.branch.merge.git.rebase keyword.operator.branch.merge.git.rebase
#^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ meta.branch.merge.git.rebase
#                               ^ - meta.branch - comment
#                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ comment.line.git.rebase
#                                ^ punctuation.definition.comment.git.rebase
# <- meta.branch.merge.git.rebase keyword.operator.branch.merge.git.rebase
# ^^ variable.parameter.option.git.rebase
# ^ punctuation.definition.variable.git.rebase
#    ^^^^^^^ constant.other.hash.git.rebase
#            ^^^^^^^^^^^^^^^^^^^ constant.language.branch-name.git.commit
merge -C c7cba2e feature/branch-name # Merge branch 'alicja/loyalty'
# <- meta.branch.merge.git.rebase keyword.operator.branch.merge.git.rebase
#^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ meta.branch.merge.git.rebase
#                                   ^ - meta.branch - comment
#                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ comment.line.git.rebase
#                                    ^ punctuation.definition.comment.git.rebase
#^^^^ keyword.operator.branch.merge.git.rebase
#     ^^ variable.parameter.option.git.rebase
#     ^ punctuation.definition.variable.git.rebase
#        ^^^^^^^ constant.other.hash.git.rebase
#                ^^^^^^^^^^^^^^^^^^^ constant.language.branch-name.git.commit

  # p 6746220 Second pick commit # no comment
# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ comment.line.git.rebase
  b
# ^ keyword.operator.commit.break
  break
# ^^^^^ keyword.operator.commit.break
  d d284bb2 Drop commit
# ^ keyword.operator.commit.drop
  drop d284bb2 Drop commit
# ^^^^ keyword.operator.commit.drop
  e d284bb2 Edit commit
# ^ keyword.operator.commit.edit
  edit d284bb2 Edit commit
# ^^^^ keyword.operator.commit.edit
  f d284bb2 Fixup commit
# ^ keyword.operator.commit.fixup
  fixup d284bb2 Fixup commit
# ^^^^^ keyword.operator.commit.fixup
  f -c d284bb2 Fixup commit
# ^ keyword.operator.commit.fixup
  fixup -C d284bb2 Fixup commit
# ^^^^^ keyword.operator.commit.fixup
  r d284bb2 Reword commit
# ^ keyword.operator.commit.reword
  reword d284bb2 Reword commit
# ^^^^^^ keyword.operator.commit.reword
  x git tag -d 0.1.0
# ^ meta.shell.git.rebase - source.shell
#  ^^^^^^^^^^^^^^^^^ meta.shell.git.rebase source.shell.embedded.git.rebase
#   ^^^ meta.function-call.identifier.shell
#      ^^^^^^^^^^^^^ meta.function-call.arguments.shell
#                   ^ meta.shell.git.rebase - source
# ^ keyword.operator.exec.git.rebase
#   ^^^ variable.function.shell
#           ^^ variable.parameter.option.shell
  exec git tag -d 0.1.0
# ^^^^ meta.shell.git.rebase - source.shell
#     ^^^^^^^^^^^^^^^^^ meta.shell.git.rebase source.shell.embedded.git.rebase
#      ^^^ meta.function-call.identifier.shell
#         ^^^^^^^^^^^^^ meta.function-call.arguments.shell
# ^^^^ keyword.operator.exec.git.rebase
#      ^^^ variable.function.shell
#              ^^ variable.parameter.option.shell
#                      ^ meta.shell.git.rebase - source

# Rebase 9e73d21..6746220 onto 9e73d21 (2 commands)
# <- comment.line punctuation.definition.comment
# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ comment.line meta.rebase-msg
#        ^^^^^^^ constant.other.hash
#               ^^ punctuation.separator.commit-range
#                 ^^^^^^^ constant.other.hash
#                              ^^^^^^^ constant.other.hash
#
# Commands:
# <- comment.line.git.rebase punctuation.definition.comment.git.rebase
#^^^^^^^^^^^ comment.line.git.rebase
# ^^^^^^^^ markup.heading.git.rebase
#
# p, pick = use commit
# <- comment.line.git.rebase punctuation.definition.comment.git.rebase
#^^^^^^^^^^^^^^^^^^^^^^ comment.line.git.rebase
# ^^^^^^^^^^^^^^^^^^^^ meta.commands-help.git.rebase
#^ - keyword.operator
# ^ keyword.operator.commit.pick
#  ^^ - keyword.operator
#  ^ punctuation.separator.sequence
#    ^^^^ keyword.operator.commit.pick
#        ^^^^^^^^^^^^^ - keyword.operator
#         ^ punctuation.separator.key-value
# ^^^^^^^^^^ - string.unquoted
#           ^^^^^^^^^^ string.unquoted
#
# p, pick <commit> = use commit
# <- comment.line.git.rebase punctuation.definition.comment.git.rebase
# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ meta.commands-help.git.rebase
# ^ keyword.operator.commit.pick.git.rebase
#  ^ punctuation.separator.sequence.git.rebase
#    ^^^^ keyword.operator.commit.pick.git.rebase
#         ^^^^^^^^ variable.parameter.git.rebase
#         ^ punctuation.definition.variable.begin.git.rebase
#                ^ punctuation.definition.variable.end.git.rebase
#                  ^ punctuation.separator.key-value.git.rebase
#                    ^^^^^^^^^^ string.unquoted.git.rebase
#
# r, reword = use commit, but edit the commit message
# <- comment.line.git.rebase punctuation.definition.comment.git.rebase
# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ meta.commands-help.git.rebase
# ^ keyword.operator.commit.reword
#    ^^^^^^ keyword.operator.commit.reword
#
# r, reword <commit> = use commit, but edit the commit message
# <- comment.line.git.rebase punctuation.definition.comment.git.rebase
# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ meta.commands-help.git.rebase
# ^ keyword.operator.commit.reword.git.rebase
#  ^ punctuation.separator.sequence.git.rebase
#    ^^^^^^ keyword.operator.commit.reword.git.rebase
#           ^^^^^^^^ variable.parameter.git.rebase
#           ^ punctuation.definition.variable.begin.git.rebase
#                  ^ punctuation.definition.variable.end.git.rebase
#                    ^ punctuation.separator.key-value.git.rebase
#                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ string.unquoted.git.rebase
#
# e, edit = use commit, but stop for amending
# <- comment.line.git.rebase punctuation.definition.comment.git.rebase
# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ meta.commands-help.git.rebase
# ^ keyword.operator.commit.edit
#    ^^^^ keyword.operator.commit.edit
#
# e, edit <commit> = use commit, but stop for amending
# <- comment.line.git.rebase punctuation.definition.comment.git.rebase
# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ meta.commands-help.git.rebase
# ^ keyword.operator.commit.edit.git.rebase
#  ^ punctuation.separator.sequence.git.rebase
#    ^^^^ keyword.operator.commit.edit.git.rebase
#         ^^^^^^^^ variable.parameter.git.rebase
#         ^ punctuation.definition.variable.begin.git.rebase
#                ^ punctuation.definition.variable.end.git.rebase
#                  ^ punctuation.separator.key-value.git.rebase
#                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ string.unquoted.git.rebase
#
# s, squash = use commit, but meld into previous commit
# <- comment.line.git.rebase punctuation.definition.comment.git.rebase
# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ meta.commands-help.git.rebase
# ^ keyword.operator.commit.squash
#    ^^^^^^ keyword.operator.commit.squash
#
# s, squash <commit> = use commit, but meld into previous commit
# <- comment.line.git.rebase punctuation.definition.comment.git.rebase
# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ meta.commands-help.git.rebase
# ^ keyword.operator.commit.squash.git.rebase
#  ^ punctuation.separator.sequence.git.rebase
#    ^^^^^^ keyword.operator.commit.squash.git.rebase
#           ^^^^^^^^ variable.parameter.git.rebase
#           ^ punctuation.definition.variable.begin.git.rebase
#                  ^ punctuation.definition.variable.end.git.rebase
#                    ^ punctuation.separator.key-value.git.rebase
#                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ string.unquoted.git.rebase
#
# f, fixup = like "squash", but discard this commit's log message
# <- comment.line.git.rebase punctuation.definition.comment.git.rebase
# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ meta.commands-help.git.rebase
# ^ keyword.operator.commit.fixup
#    ^^^^^ keyword.operator.commit.fixup
#
# f, fixup [-C | -c] <commit> = like "squash" but keep only the previous
# <- comment.line.git.rebase punctuation.definition.comment.git.rebase
# ^ keyword.operator.commit.fixup
#    ^^^^^ keyword.operator.commit.fixup
#
# f, fixup [-C | -c] <commit> = like "squash" but keep only the previous
#                    commit's log message, unless -C is used, in which case
#                    keep only this commit's message; -c is same as -C but
#                    opens the editor
# <- comment.line.git.rebase punctuation.definition.comment.git.rebase
# ^^^^^^^^^^^^^^^^^^^ meta.commands-help - string
#                    ^^^^^^^^^^^^^^^^ meta.commands-help.git.rebase
#
# x, exec = run command (the rest of the line) using shell
# <- comment.line.git.rebase punctuation.definition.comment.git.rebase
# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ meta.commands-help.git.rebase
# ^ keyword.operator.commit.exec
#    ^^^^ keyword.operator.commit.exec
#
# x, exec <command> = run command (the rest of the line) using shell
# <- comment.line.git.rebase punctuation.definition.comment.git.rebase
# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ meta.commands-help.git.rebase
# ^ keyword.operator.commit.exec.git.rebase
#  ^ punctuation.separator.sequence.git.rebase
#    ^^^^ keyword.operator.commit.exec.git.rebase
#         ^^^^^^^^^ variable.parameter.git.rebase
#         ^ punctuation.definition.variable.begin.git.rebase
#                 ^ punctuation.definition.variable.end.git.rebase
#                   ^ punctuation.separator.key-value.git.rebase
#                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ string.unquoted.git.rebase
#
# b, break = stop here (continue rebase later with 'git rebase --continue')
# <- comment.line.git.rebase punctuation.definition.comment.git.rebase
# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ meta.commands-help.git.rebase
# ^ keyword.operator.commit.break.git.rebase
#  ^ punctuation.separator.sequence.git.rebase
#    ^^^^^ keyword.operator.commit.break.git.rebase
#          ^ punctuation.separator.key-value.git.rebase
#            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ string.unquoted.git.rebase
#
# d, drop = remove commit
# <- comment.line.git.rebase punctuation.definition.comment.git.rebase
# ^^^^^^^^^^^^^^^^^^^^^^^ meta.commands-help.git.rebase
# ^ keyword.operator.commit.drop
#    ^^^^ keyword.operator.commit.drop
#
# d, drop <commit> = remove commit
# <- comment.line.git.rebase punctuation.definition.comment.git.rebase
# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ meta.commands-help.git.rebase
# ^ keyword.operator.commit.drop.git.rebase
#  ^ punctuation.separator.sequence.git.rebase
#    ^^^^ keyword.operator.commit.drop.git.rebase
#         ^^^^^^^^ variable.parameter.git.rebase
#         ^ punctuation.definition.variable.begin.git.rebase
#                ^ punctuation.definition.variable.end.git.rebase
#                  ^ punctuation.separator.key-value.git.rebase
#                    ^^^^^^^^^^^^^ string.unquoted.git.rebase
#
# l, label <label> = label current HEAD with a name
# <- comment.line.git.rebase punctuation.definition.comment.git.rebase
# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ meta.commands-help.git.rebase
# ^ keyword.operator.commit.label.git.rebase
#  ^ punctuation.separator.sequence.git.rebase
#    ^^^^^ keyword.operator.commit.label.git.rebase
#          ^^^^^^^ variable.parameter.git.rebase
#          ^ punctuation.definition.variable.begin.git.rebase
#                ^ punctuation.definition.variable.end.git.rebase
#                  ^ punctuation.separator.key-value.git.rebase
#                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ string.unquoted.git.rebase
#
# t, reset <label> = reset HEAD to a label
# <- comment.line.git.rebase punctuation.definition.comment.git.rebase
# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ meta.commands-help.git.rebase
# ^ keyword.operator.commit.reset.git.rebase
#  ^ punctuation.separator.sequence.git.rebase
#    ^^^^^ keyword.operator.commit.reset.git.rebase
#          ^^^^^^^ variable.parameter.git.rebase
#          ^ punctuation.definition.variable.begin.git.rebase
#                ^ punctuation.definition.variable.end.git.rebase
#                  ^ punctuation.separator.key-value.git.rebase
#                    ^^^^^^^^^^^^^^^^^^^^^ string.unquoted.git.rebase
#
# m, merge [-C <commit> | -c <commit>] <label> [# <oneline>]
# <- comment.line.git.rebase punctuation.definition.comment.git.rebase
# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ meta.commands-help.git.rebase
# ^ keyword.operator.commit.merge.git.rebase
#  ^ punctuation.separator.sequence.git.rebase
#    ^^^^^ keyword.operator.commit.merge.git.rebase
#          ^^^^^^^^^^^^^^^^^^^^^^^^^^^ meta.brackets.git.rebase
#          ^ punctuation.section.brackets.begin.git.rebase
#           ^ variable.parameter.option.git.rebase punctuation.definition.variable.git.rebase
#            ^ variable.parameter.option.git.rebase - punctuation
#              ^^^^^^^^ variable.parameter.git.rebase
#              ^ punctuation.definition.variable.begin.git.rebase
#                     ^ punctuation.definition.variable.end.git.rebase
#                       ^ punctuation.separator.sequence.git.rebase
#                         ^ variable.parameter.option.git.rebase punctuation.definition.variable.git.rebase
#                          ^ variable.parameter.option.git.rebase - punctuation
#                            ^^^^^^^^ variable.parameter.git.rebase
#                            ^ punctuation.definition.variable.begin.git.rebase
#                                   ^ punctuation.definition.variable.end.git.rebase
#                                    ^ punctuation.section.brackets.end.git.rebase
#                                      ^^^^^^^ variable.parameter.git.rebase
#                                      ^ punctuation.definition.variable.begin.git.rebase
#                                            ^ punctuation.definition.variable.end.git.rebase
#                                              ^^^^^^^^^^^^^ meta.brackets.git.rebase
#                                              ^ punctuation.section.brackets.begin.git.rebase
#                                               ^ punctuation.definition.comment.git.rebase
#                                                 ^^^^^^^^^ variable.parameter.git.rebase
#                                                 ^ punctuation.definition.variable.begin.git.rebase
#                                                         ^ punctuation.definition.variable.end.git.rebase
#                                                          ^ punctuation.section.brackets.end.git.rebase
#
# m, merge [-C <commit> | -c <commit>] <label> [# <oneline>]
# .       create a merge commit using the original merge commit's
# .       message (or the oneline, if no original merge commit was
# .       specified); use -c <commit> to reword the commit message
# <- comment.line.git.rebase punctuation.definition.comment.git.rebase
# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ meta.commands-help.git.rebase
# ^ punctuation.definition.description.git.rebase
#  ^^^^^^^ - punctuation - string
#         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ string.unquoted.git.rebase
# These lines can be re-ordered; they are executed from top to bottom.
# <- comment.line.git.rebase punctuation.definition.comment.git.rebase
#
# If you remove a line here THAT COMMIT WILL BE LOST.
# <- comment.line.git.rebase punctuation.definition.comment.git.rebase
#
# However, if you remove everything, the rebase will be aborted.
# <- comment.line.git.rebase punctuation.definition.comment.git.rebase
#
# Note that empty commits are commented out
# <- comment.line.git.rebase punctuation.definition.comment.git.rebase
